Generally, network equipment installed at a location where a network, such as an enterprise network or a data center, is connected to an Internet Service Provider (ISP) network, for example, a router, may be subject to congestion because the traffic from the enterprise network to the external ISP network increases depending on the situation of the occurrence of traffic. Furthermore, in the case of a data center, the congestion of traffic occurs because the excessive traffic generated by users who are present inside the external ISP network is concentrated on servers inside the data center.
If such congestion occurs, a congestion control method is employed. A congestion control method functions to process packets when a queue is fully filled with packets and new packets continuously arrive. Representative congestion control methods include Tail Drop, random early detection (RED), and weight random early detection (WRED).
Tail Drop is a method that functions literally to cut a tail off. That is, Tail Drop functions to drop packets arriving after the occurrence of congestion when congestion occurs and packets arrive. Since all packets arriving after the occurrence of congestion, that is, after the reaching of a maximum queue size, are dropped, even traffic of high importance may be lost. Furthermore, since this method is based on the sequence of the arrival of packets, the overall traffic of a specific user may be dropped.
RED is a method that randomly drops packets before the occurrence of congestion. RED sets minimum and maximum threshold values, and performs processing in three modes, that is, no drop, random drop, and tail drop. Below the minimum threshold value, no drop is performed. In the range from the minimum threshold value to the maximum threshold value, random drop is performed in terms of probability. Meanwhile, above the maximum threshold value, 100% drop, that is, tail drop, is performed. Since this method randomly drops packets, there is the possibility of losing important packets and a phenomenon in which only the traffic of a specific user is dropped may occur.
Meanwhile, WRED is a method that assigns weights to the possibilities of dropping packets in order to reduce the disadvantage of RED, that is, the loss of important packets. This method sets the priorities of dropping by classifying individual traffic based on the differentiated services code point (DSCP) and setting different minimum threshold values for corresponding classes. That is, the minimum threshold value for a class of low priority is set to a low value, and thus random drop is performed earlier. In contrast, the minimum threshold value for a class of high priority is set to a high value, and thus the possibility of the occurrence of random drop is kept low. Although this method can partially mitigate the disadvantage of RED, that is, the loss of important traffic, there is still the possibility of losing the traffic of a specific user because this method is applied based on classes.
The conventional congestion avoidance methods have been described above. Although a part of the methods can prevent the loss of important traffic based on classes, there is the strong possibility of individual traffic being unfairly lost because the individual traffic is lost based on probability.